package com.chat.chatting.service;

import com.chat.chatting.dto.DataJson;
import com.chat.chatting.dto.UserAddFormDto;
import com.chat.chatting.entity.UserEntity;
import org.springframework.web.multipart.MultipartFile;

/**
 * (User)表服务接口
 *
 * @author makejava
 * @since 2021-12-24 21:39:08
 */
public interface UserService {

    /**
     * 通过用户ID查询单条数据
     *
     * @param userID 用户ID
     * @return 实例对象
     */
    UserEntity queryByUserID(Integer userID);

    /**
     * 创建新用户
     *
     * @param userAddFormDto
     * @return 用户ID
     */
    Integer create(UserAddFormDto userAddFormDto);

    /**
     * 上传头像
     *
     * @param multipartFile
     * @return
     */
    DataJson uploadImage(MultipartFile multipartFile, Integer userID);

    /**
     * 获取用户头像
     *
     * @param userID
     * @return 头像名称
     */
    String getImage(Integer userID);

    /**
     * 用户登录
     *
     * @param userID 用户ID
     * @param password 密码
     * @return
     */
    DataJson login(Integer userID, String password);

    /**
     * 修改昵称
     *
     * @param userID 用户ID
     * @param nickName 昵称
     * @return
     */
    DataJson updateNickName(Integer userID, String nickName);
}